package com.ihr360.insurance.entity.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ihr360.commons.model.type.BenefitsPayer;

import java.io.Serializable;
import java.util.Date;

/**
 * @author Stone.Shi
 * @description 社保/公积金数据Vo
 * @date 2018-02-02 09:07:50.
 */
public class BenefitVo implements Serializable {

    private static final long serialVersionUID = -812365646385447673L;

    /**
     * 代理服务商
     */
    private Long vendorId;

    /**
     * 缴纳组织
     */
    private Long payDepartmentId;

    /**
     * 实际承担方
     */
    private BenefitsPayer actualPayer;

    /**
     * 是否计算
     */
    private Boolean calculatable;

    /**
     * 申报基数
     */
    private Integer base;

    /**
     * 起始月份
     */
    @JsonFormat(pattern = "yyyy-MM", timezone = "GMT+8")
    private Date startOn;

    /**
     * 停缴月份
     */
    @JsonFormat(pattern = "yyyy-MM", timezone = "GMT+8")
    private Date endOn;

    /**
     * 缴纳地
     */
    private Long divisionId;

    /**
     * 社保/公积金原始方案id：用于判断方案是否有修改
     */
    private Long originalCompanyBenefitId;

    /**
     * 社保/公积金最终方案id：用于判断方案是否有修改
     */
    private Long companyBenefitId;

    /**
     * 社保/公积金方案名称
     */
    private String companyBenefitName;

    public Long getVendorId() {
        return vendorId;
    }

    public void setVendorId(Long vendorId) {
        this.vendorId = vendorId;
    }

    public Long getPayDepartmentId() {
        return payDepartmentId;
    }

    public void setPayDepartmentId(Long payDepartmentId) {
        this.payDepartmentId = payDepartmentId;
    }

    public BenefitsPayer getActualPayer() {
        return actualPayer;
    }

    public void setActualPayer(BenefitsPayer actualPayer) {
        this.actualPayer = actualPayer;
    }

    public Boolean getCalculatable() {
        return calculatable;
    }

    public void setCalculatable(Boolean calculatable) {
        this.calculatable = calculatable;
    }

    public Integer getBase() {
        return base;
    }

    public void setBase(Integer base) {
        this.base = base;
    }

    public Date getStartOn() {
        return startOn;
    }

    public void setStartOn(Date startOn) {
        this.startOn = startOn;
    }

    public Date getEndOn() {
        return endOn;
    }

    public void setEndOn(Date endOn) {
        this.endOn = endOn;
    }

    public Long getDivisionId() {
        return divisionId;
    }

    public void setDivisionId(Long divisionId) {
        this.divisionId = divisionId;
    }

    public Long getOriginalCompanyBenefitId() {
        return originalCompanyBenefitId;
    }

    public void setOriginalCompanyBenefitId(Long originalCompanyBenefitId) {
        this.originalCompanyBenefitId = originalCompanyBenefitId;
    }

    public Long getCompanyBenefitId() {
        return companyBenefitId;
    }

    public void setCompanyBenefitId(Long companyBenefitId) {
        this.companyBenefitId = companyBenefitId;
    }

    public String getCompanyBenefitName() {
        return companyBenefitName;
    }

    public void setCompanyBenefitName(String companyBenefitName) {
        this.companyBenefitName = companyBenefitName;
    }
}
